# 定义

s1 = '张三\n也称为法外狂徒'
# print(s1)

s2 = "李四"

s3 = '''
张老师：
    您好！这是我的作业
'''

# print(s3)

s4 = """
刘老师：
    您好！我的作业不会写
"""
# print(s4)


# 字符串属于 python 中不可变的、有序的数据类型
# 取值：通过位置取值
# 索引
# print(
#     s1[6]
# )
#
# print(
#     s1[-4]
# )

# 切片
# print(
#     s1[6:8]
# )
#
# # 字符串的逆序（列表也一样 reverse）
#
# print(
#     s1[::-1]
# )


# strip、split

# st = input("请您输入您的名字和年龄（中间使用空格隔开）：")
#
# st = st.strip()         # 去掉前后的空字符：空格、换行符、制表符
#
# st_temp = st.split(' ')     # 以一个空格拆分字符串，拆分的结果是一个列表
#
# if len(st_temp) == 2:
#     name, age = st_temp     # 多变量同时赋值
#
#     if name.isdigit():      # 判断是否是数字字符串
#         name, age = age, name       # 交换绑定的值
#
#     print(f"欢迎：{name}，您的年龄是：{age}岁")
# else:
#     print("输入有误！")


# 正则表达式

import re
# from re import findall


st = input("请您输入您的名字和年龄（中间使用空格隔开）：")


def match(patterns):
    """
    使用正则表达式匹配需要的内容
    返回第一个匹配结果
    """
    res = re.findall(patterns, st)  # 找到所有的数字：\d+
    if res:
        res = res[0]
    else:
        res = None

    return res


st = st.strip()         # 去掉前后的空字符：空格、换行符、制表符

# 找到所有的数字：\d+
age = match(r'\d+')
name = match(r'[\u4e00-\u9fa5]+')


if age and name:
    if name.isdigit():      # 判断是否是数字字符串
        name, age = age, name       # 交换绑定的值
    print(f"欢迎：{name}，您的年龄是：{age}岁")
else:
    print("输入有误！")


# 匹配所有的数字: \d+

# 匹配所有中文：[\u4e00-\u9fa5]+

# 匹配所有的英文：[a-zA-Z]+


